[JavaScript]解决addEventListener绑定同样的函数多次执行/解决函数绑定带参数却自动执行

您所在的位置:网站首页 js addEventListener只执行一个 [JavaScript]解决addEventListener绑定同样的函数多次执行/解决函数绑定带参数却自动执行

[JavaScript]解决addEventListener绑定同样的函数多次执行/解决函数绑定带参数却自动执行

2024-07-10 17:15| 来源: 网络整理| 查看: 265

  Eventlistener since you define new function(no matter it looks the same, it is different object).

To use the same handler each time you must define it outside bindEvents and pass it by name (by reference).

首先就是当你会使用重复绑定的handler(同一个作用)的时候,不要写匿名函数,如

element.addEventListener('click', (e) => { //.... };

那样当你再次执行的时候,其实已经是两个对象了,最好的方法是给它用名字传递并且写在外面。

然后就是函数会自动执行

node.addEventListener('click', handlejump());//错误 node.addEventListener('click', handlejump);//正确

 如果你要带参数,用onclick

node.onclick = function () { cur.handlejump(jumpList, index, componentId); // pass param but not be executed }; handlejump = (jumpList, index, componentId) => { //... }

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3